package org.jeecg.modules.paycenter.channel.bankdocking.dto;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import java.math.BigDecimal;

@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@XmlAccessorType(XmlAccessType.FIELD)
public class Cmp {
    /**省市代码*/
    @XmlElement
    private String DbProv;
    /**账号*/
    @XmlElement
    private String DbAccNo;
    /**货币号*/
    @XmlElement
    private String DbCur;

    //多级账簿编号
    @XmlElement
    private String DbLogAccNo;

    //多级账簿上级编号
    @XmlElement
    private String CrLogAccNo;

    @XmlElement
    private String CrProv;
    @XmlElement
    private String CrAccNo;

    @XmlElement
    private String CrCur;
    @XmlElement
    private String ConFlag;



    /**私有数据区*/
    @XmlElement
    private String RespPrvData1;

    /**文件名*/
    @XmlElement
    private String BatchFileName;

    /**私有数据区*/
    @XmlElement
    private String RespPrvData;

    /**文件名*/
    @XmlElement
    private String BatFileName;


    /**查询金融交易处理状态
     * 返回值 TransSta
     * 1 待复核 表示等待复核，交易还没有发到后台，除 了极少数客户提出 ERP 录入客户端复核 的需求外，其他客户的 ERP 交易是不需 要复核直接提交后台的，因此不会遇到这 个状态
     * 2 未复核完成 同上，表示还未完全通过复核环节
     * 3 正在发送 此为临时状态，银行系统会及时更新为最 终的处理状态
     * 4 处理成功 此为最终状态，即交易成功
     * 5 交易失败 此为最终状态，即交易失败
     * 6 落地待处理 交易等待柜员人工处理，人工处理完后系 统会自动更新为 4（成功）或 5（失败）
     * 7 预约受理 客户使用了预约功能，系统等待到了预约 时间再提交后台
     * 8 交易取消 此状态比较少见，可视为失败
     * 9 交易状态未知 需要继续查证*/
    @XmlElement
    private String TransSta;

    //借方(付方)基数
    @XmlElement
    private BigDecimal DbAcum;
    //贷方(收方)基数
    @XmlElement
    private BigDecimal CrAcum;
    //超额定支额度
    @XmlElement
    private BigDecimal AuthAmt;
    //统计标识
    @XmlElement
    private String StatInd;

    @XmlElement
    private String StartTime;

    //多级账簿输出标志  0-不输出 1-按日 2-按月
    @XmlElement
    private String LogAccBkOInd;

    //交易日期
    @XmlElement
    private String TrDate;
    //日志号
    @XmlElement
    private String JrnNo;
}
